﻿//-----------------------------------------------------------------------------------------------------------
// Wbfs Engine (WBFSe) Project by Omega Frost 
// http://wbfse.codeplex.com/
//
// WBFSe is Licensed under the terms of the 
// Microsoft Reciprocal License (Ms-RL)
//-----------------------------------------------------------------------------------------------------------
using System;
using WBFSe.Builders;
using WBFSe.Data;
using System.Collections.Generic;

namespace WBFSe.Attributes
{
    /// <summary>
    /// Extended information about the disc
    /// </summary>
    public interface IDiscExtendedInfo : IGameInfo
    {
        /// <summary>
        /// Update installer
        /// </summary>
        Boolean HasUpdate { get; }

        /// <summary>
        /// Channel installer
        /// </summary>
        Boolean HasChannel { get; }

        /// <summary>
        /// Sector by sector usage
        /// </summary>
        UsageTable Usage { get; }

        /// <summary>
        /// Disc sector size
        /// </summary>
        Int32 SectorSize { get; }

        /// <summary>
        /// Filesystem's root
        /// </summary>
        FileSystemNode Root { get; }

        /// <summary>
        /// Double layer game
        /// </summary>
        Boolean DoubleLayer { get; }

        /// <summary>
        /// The flags used to build the disc
        /// </summary>
        BuildFlags BuildFlags { get; }

        /// <summary>
        /// List of modified regions of the disc
        /// </summary>
        IList<FixData> FixData { get; }
    }
}
